package types

import "home-bank/service/something/model"

type (
	CreateSomethingRequest struct {
		Name        string `json:"name" binding:"required"`
		CategoryId  int64  `json:"category_id" binding:"required"`
		ContainerId int64  `json:"container_id" binding:"required"`
	}

	UpdateSomethingRequest struct {
		Id          int64  `json:"id" binding:"required"`
		Name        string `json:"name" binding:""`
		CategoryId  int64  `json:"category_id" binding:""`
		ContainerId int64  `json:"container_id" binding:""`
	}

	DeleteSomethingRequest struct {
		Id int64 `json:"id" binding:"required"`
	}

	GetSomethingListRequest struct {
		Id          int64  `json:"id" binding:""`
		Name        string `json:"name" binding:""`
		CategoryId  int64  `json:"category_id" binding:""`
		ContainerId int64  `json:"container_id" binding:""`
		StartTime   string `json:"start_time" binding:""`
		EndTime     string `json:"end_time" binding:""`
		Page        int    `json:"page" binding:"min=1"`
		PageSize    int    `json:"page_size" binding:"min=1,max=200"`
	}

	CreateSomethingResponse struct {
	}

	UpdateSomethingResponse struct {
	}

	DeleteSomethingResponse struct {
	}

	GetSomethingListResponse struct {
		List     []model.Something `json:"list"`
		Page     int               `json:"page"`
		PageSize int               `json:"page_size"`
		Total    int64             `json:"total"`
	}
)
